;
!function() {
	var	layer = layui.layer,
		form = layui.form,
		upload = layui.upload;

	// 头像上传
	var uploadInst = upload.render({
		elem : '#img-upload',
		url : '/secuser/userImgUpload',
		accept : 'images',
		size : 5120,
		before : function(obj) {
			layer.load();
		},
		done : function(res) {
			layer.closeAll('loading');
			if (res.status == 0) {
				//上传完毕回调
				$("#headImage").prop("src", res.data);
				layer.msg("头像上传成功");
				$('#user-img', window.parent.document).prop("src", res.data);
				return;
			}
			this.error(res);
		},
		error : function(res) {
			layer.closeAll('loading');
			layer.msg(res.msg);
		}
	});

	// 验证用户名是否合法
	form.on("submit(changeUser)", function() {
		var name = $("#user-name").val();
		if (!/^[a-zA-Z0-9_\u4E00-\u9FA5]{1,8}$/.test(name)) {
			layer.msg("用户名只能是1到8位的汉字、字母、数字或下划线", {
				icon : 5
			});
		} else {
			$.ajax({
				url : "/secuser/changeName",
				type : "post",
				data : "name=" + name,
				success : function(result) {
					if (result.status == 0) {
						$('#user-name', window.parent.document).html($("#user-name").val());
					}
					layer.msg(result.msg);
				}
			});
		}
		return false;
	});

	// 保存邮箱修改
	form.on("submit(changeEmail)", function() {
		var code = $("#email-code").val();
		if (!/^\d{6}$/.test(code)) {
			layer.msg("验证码错误", {
				icon : 5
			});
		} else {
			$.ajax({
				url : "/secuser/vailEmail",
				type : "post",
				data : {
					"code" : code,
					"email" : $("#newEmail").val()
				},
				success : function(result) {
					if (result.status == 0) {
						// 执行修改
						$.ajax({
							url : "/secuser/changeEmail",
							type : "post",
							data : "email=" + $("#newEmail").val(),
							success : function(result) {
								if (result.status == 0) {
									location.href = "/userInfo";
								} else {
									layer.msg(result.msg);
								}
							}
						});
					} else {
						layer.msg(result.msg);
					}
				}
			});
		}

		return false;
	});

	// 保存手机号修改
	form.on("submit(changePhone)", function() {
		var code = $("#new-msg-code").val();
		if (!/^\d{6}$/.test(code)) {
			layer.msg("验证码错误", {
				icon : 5
			});
		} else {
			$.ajax({
				url : "/secuser/vail",
				type : "post",
				data : {
					"code" : code,
					"account" : $("#newPhone").val()
				},
				success : function(result) {
					if (result.status == 0) {
						// 执行修改
						$.ajax({
							url : "/secuser/changePhone",
							type : "post",
							data : "phone=" + $("#newPhone").val(),
							success : function(result) {
								if (result.status == 0) {
									location.href = "/userInfo";
								} else {
									layer.msg(result.msg);
								}
							}
						});
					} else {
						layer.msg(result.msg);
					}
				}
			});
		}

		return false;
	});

	// 修改手机号时点击下一步判断给原手机发送的验证码输入是否正确
	$("#update-next-btn").click(function() {
		var code = $("#old-msg-code").val();
		if (code == null || code == "") {
			layer.msg("验证码不能为空", {
				icon : 5
			});
		} else if (!/^\d{6}$/.test(code)) {
			layer.msg("验证码错误", {
				icon : 5
			});
		} else {
			$.ajax({
				url : "/secuser/vail",
				type : "post",
				data : "code=" + code,
				success : function(result) {
					if (result.status == 0) {
						$("#update-phone-before").hide();
						$("#update-phone-last").show();
					} else {
						layer.msg(result.msg);
					}
				}
			});
		}

		return false;
	});

	// 打开修改手机号码弹窗
	$("#btnTelChange").click(function() {
		layer.open({
			type : 1,
			title : false,
			content : $("#changePhoneDiv")
		});

		return false;
	});

	// 打开修改邮箱弹窗
	$("#btnEmailChange").click(function() {
		layer.open({
			type : 1,
			title : false,
			content : $("#changeEmailDiv")
		});

		return false;
	});

	// 获取当前手机的验证码
	$(".oldPhoneCode-btn").click(function() {
		getCheckCode($(this));
		return false;
	});

	// 获取新手机的验证码
	$(".newPhoneCode-btn").click(function() {
		getCheckCode($(this));
		return false;
	});

	// 获取邮箱的验证码
	$(".emailCode-btn").click(function() {
		getCheckCode($(this));
		return false;
	});

	var InterValObj; // timer变量，控制时间
	var count = 120; // 间隔函数，1秒执行
	var curCount; // 当前剩余秒数
	var btn;

	// 更换手机号时发送验证码和绑定邮箱时发送验证码
	function getCheckCode(b) {
		var ct = b.attr("class");
		clearInterval(InterValObj); // 停止计时器
		btn = b;
		$(btn).removeAttr("disabled"); // 移除禁用状态改为可用
		$(btn).removeClass("layui-btn-disabled");
		$(btn).text("重新发送");
		curCount = count;
		var account;
		var url;
		if (ct.indexOf("oldPhoneCode-btn") != -1) {
			url = "sendSMS";
		} else if (ct.indexOf("emailCode-btn") != -1) {
			account = $("#newEmail").val();
			if(!/^([a-z0-9_\.-]+)@([\da-z\.-]+)\.([a-z\.]{2,6})$/.test(account)){
				layer.msg("请输入正确的邮箱");
				return false;
			}
			url = "sendEmail";
		} else {
			account = $("#newPhone").val();
			if(!/^1[34578]\d{9}$/.test(account)){
				layer.msg("请输入正确的手机号码");
				return false;
			}
			url = "newPhoneSendSMS";
		}
		// 设置button效果，开始计时
		$(btn).addClass("layui-btn-disabled");
		$(btn).prop("disabled", "disabled"); // 设置按钮为禁用状态
		$(btn).text("正在发送..."); // 更改按钮文字
		$.ajax({
			url : "/secuser/" + url,
			type : "post",
			data : {
				"account" : account
			},
			success : function(result) {
				if (result.status == 0) {
					$(btn).text(curCount + "秒"); // 更改按钮文字
					InterValObj = setInterval(SetRemainTime, 1000); // 启动计时器timer处理函数，1秒执行一次
				} else {
					layer.msg(result.msg);
					$(btn).text("重新发送");
					$(btn).removeAttr("disabled"); // 移除禁用状态改为可用
					$(btn).removeClass("layui-btn-disabled");
				}
			}
		});
	}

	// timer处理函数
	function SetRemainTime() {
		if (curCount == 0) {
			clearInterval(InterValObj); // 停止计时器
			$(btn).removeClass("layui-btn-disabled");
			$(btn).removeAttr("disabled"); // 移除禁用状态改为可用
			$(btn).text("重新发送");
		} else {
			curCount--;
			$(btn).text(curCount + "秒");
		}
	}
}();